Using and comparing known and current activity states to determine receptiveness

ABSTRACT

A computer-implemented method may include identifying a sending computer system and a receiving computer system. The method may also include receiving a request from the sending computer system for a receptiveness value of the receiving computer system, where the receptiveness value indicates openness of the receiving computer system to interruption. The method may also include determining a current state of the receiving computer system. The method may also include determining a known state of the receiving computer system. The method may also include calculating a known state receptiveness value. The method may also include analyzing the current state and the known state to determine whether the current state is equivalent to the known state. The method may also include calculating the receptiveness value for the receiving computer system. The method may also include transmitting computer instructions for displaying the receptiveness value to the sending computer system.

BACKGROUND

The present disclosure relates to communication, and more specificallyto using activity states of a computer system and the surrounding areato determine receptiveness to an electronic communication.

SUMMARY

The present invention provides a computer implemented method, a system,and a computer program product to determine receptiveness to anelectronic communication. The method may include identifying a sendingcomputer system and a receiving computer system, where the sendingcomputer system is a potential sender of at least one electronic messageduring a first time period and where the receiving computer system is apotential recipient of the at least one electronic message during thefirst time period. The method may also include receiving a request fromthe sending computer system for a receptiveness value of the receivingcomputer system, where the receptiveness value indicates openness of thereceiving computer system to interruption. The method may also includedetermining a current state of the receiving computer system, where thecurrent state is a state of activity of one or more external devices ina geographic area of the receiving computer system during the first timeperiod. The method may also include determining a known state of thereceiving computer system, where the known state is the state ofactivity of the one or more external devices in the geographic area ofthe receiving computer system during a second time period, where thesecond time period precedes the first time period. The method may alsoinclude analyzing the current state and the known state to determinewhether the current state is equivalent to the known state. The methodmay also include, in response to analyzing the current state and theknown state, calculating the receptiveness value for the receivingcomputer system. The method may also include transmitting computerinstructions for displaying the receptiveness value to the sendingcomputer system.

The above summary is not intended to describe each illustratedembodiment or every implementation of the present disclosure.

BRIEF DESCRIPTION OF THE DRAWINGS

The drawings included in the present application are incorporated into,and form part of, the specification. They illustrate embodiments of thepresent disclosure and, along with the description, serve to explain theprinciples of the disclosure. The drawings are only illustrative ofcertain embodiments and do not limit the disclosure.

FIG. 1 presents a flowchart, according to various embodiments.

FIG. 2 presents a state diagram, according to various embodiments.

FIG. 3 presents a flowchart, according to various embodiments.

FIG. 4 depicts a schematic diagram outlining a computer system,according to various embodiments.

FIG. 5 depicts a cloud computing environment, according to variousembodiments.

FIG. 6 depicts abstraction model layers, according to variousembodiments.

FIG. 7 depicts a sample computer system, according to variousembodiments.

While the invention is amenable to various embodiments an alternativeforms, specifics thereof have been shown by way of example in thedrawings and will be described in detail. It should be understood,however, that the intention is not to limit the invention to theparticular embodiments described. On the contrary, the intention is tocover all modifications, equivalents, and alternatives falling withinthe spirit and scope of the invention.

DETAILED DESCRIPTION

The present disclosure relates to electronic communication, and morespecifically to using activity states of a computer system and thesurrounding area to determine receptiveness to an electroniccommunication. While the present disclosure is not necessarily limitedto such applications, various aspects of the disclosure may beappreciated through a discussion of various examples using this context.

The present invention provides a computer implemented method, a system,and a computer program product to determine receptiveness to acommunication. Aspects of the present disclosure are directed towarddetermining a numerical value, herein a receptiveness value, torepresent the openness of a receiver (a user who is a potentialrecipient of a communication) and the openness of a computer system ofthe receiver, herein a receiving computer system, to an electroniccommunication. Openness may refer to a user's willingness to beinterrupted. For example, if a user is actively working on a project,the user may not want to be interrupted. Openness may also refer to thelikeliness of the receiver viewing the communication. For example, if auser (receiver) is not very active on the receiving computer system, thereceiver may not immediately see, or view, the communication displayedon the receiving computer system.

In various embodiments, the receptiveness value indicates theopenness/receptiveness of the receiving computer system and theopenness/receptiveness of the corresponding receiver to interruption ata current time. The receptiveness may indicate the likeliness of anaction being taken by the receiver/receiving computer system once theelectronic communication has been received. For example, if thereceiver/receiving computer system were to receive a message asking fora favor, the receiver/receiving computer system may send a responseelectronic communication, take action in regards to the favor, orperhaps do nothing. In various embodiments the receptiveness value is anumber, where a high number indicates high receptiveness and a lownumber indicates low receptiveness (e.g., a value between 1 and 10), orvice versa. For example, if the present invention were to determine thatthe receptiveness value of the receiving computer system is 3, on ascale of 1 to 10, the receptiveness value may indicate to the sendingcomputer system and the corresponding sender that the receiver is notvery likely to respond or take action in response to receiving anelectronic communication. In various embodiments, the receptivenessvalue is a percentage. A high percentage may indicate a highreceptiveness and a low percentage may indicate a low receptiveness, orvice versa. For example, the receptiveness value may be 90%, indicatingthat the receiver is very likely to respond or take action in responseto receiving an electronic communication.

The receptiveness value may be displayed to a sender (a user who is apotential sender of an electronic communication) via a computer systemassociated with the sender, herein a sending computer system, who maythen decide whether or not to initiate contact based on the currentopenness of the receiving computer system to an interruption. In variousembodiments, the receptiveness value is displayed via the sendingcomputer system before the sending computer system sends an electroniccommunication to the receiving computer system. For example, thereceptiveness value may be displayed on a contact list of the sender viaan electronic communication system (e.g., electronic mail (email),instant messaging, social media messaging, text messaging). In anotherexample, the receptiveness value may be displayed in response to thesender selects a potential receiver/receiving computer system. Invarious embodiments, the sending computer system requests thereceptiveness value from the receiving computer system. The sender andthe sending computer system may have to manually request to receive andview the receptiveness value. In various embodiments, the receptivenessvalue is automatically sent to the sending computer system.

In various embodiments, a sending computer system sends an electroniccommunication to a receiving computer system. In other variousembodiments, a sending computer system does not send the electroniccommunication, or message, to the receiving computer system. Forinstance, a sending computer system may determine, after reviewing areceptiveness value of the receiving computer system, to send anelectronic communication to the receiving computer system. In otherinstances, a sending computer system may determine, after reviewing areceptiveness value of the receiving computer system, to decline sendingan electronic communication to the receiving computer system.

According to various embodiments, the receptiveness value may be ageneral value or may be specific to each sending computer system. Ageneral receptiveness value may be the same for all sending computersystems. The receiving computer system may transmit the samereceptiveness value to any and all sending computer systems. Forexample, if a receiving computer system were to have a receptivenessvalue of 0.7, the receptiveness value of 0.7 would be displayed for eachsender on the sending computer systems. In various embodiments, aspecific receptiveness value may be evaluated individually for eachsending computer system. For example, if the sender were working on aproject with the receiver such that the receiver would be more availablefor that specific sender than with other senders, a specificreceptiveness value would be assigned and displayed to the specificsender. Specifically, for example, the receiver may have a receptivenessvalue of 10 displayed to the specific sender, but any other sender andsending computer system may have a receptiveness value of 3 displayed.

In order to determine the receptiveness value, in an embodiment, thepresent invention considers activity states of the receiving computersystem as well as activity states of any nearby electronic devices. Invarious embodiments, activity states indicate the level of activity orliveliness of the receiving computer system and/or of the nearbyelectronic devices. In various embodiments, the activity state for thereceiving computer system and/or for the nearby electronic devices is ageneral activity state for the overall computer system/electronicdevice. For example, an activity state of a computer system/electronicdevice may simply be that the computer system/electronic device is on,or active. In various embodiments, each task and application within theelectronic device/computer system has a unique activity state. Forexample, the computer system may include activity states indicating thata web browser is open or active, and an email server is open or active.Activity states may simply indicate whether an electronic device, acomputer software task, and/or computer software application is on oroff. In various embodiments, activity states of an electronicdevice/computer system include detail on the activity of the device, thecomputer software task, and/or the computer software application. Forexample, an activity state of a coffee pot may include that the coffeepot is on, the water is heating, and/or the coffee is brewing. Inanother example, the activity state of a television (TV) may include thespecific show or event being watched on the TV.

The receiver/receiving computer system may be more or less receptive, oropen to interruption, depending on the activity of external devices. Forexample, if a television (TV) were on, the receiver/receiving computersystem may be less receptive/open to interruption than if the TV wereoff. Specifically, for example, if the TV were on, the primary focus ofthe receiver may be on the TV and the receiver may not view or respondto an electronic communication, such that the receiver would be lessreceptive/open to interruption. Further, for example, the receiver maybe more receptive if the news were playing on the TV and may be lessreceptive if a sports game were playing on the TV. In variousembodiments, the present invention uses both a known state and a currentstate of the receiving computer system help determine the receptivenessvalue of the receiving computer system. The known state may be anactivity state of the receiving computer system during a past time. Thecurrent state may be an activity state of the receiving computer systemduring a current time. In various embodiments, the current state and theknown state are analyzed, or correlated, to help determine thereceptiveness value.

It is to be understood that although this disclosure includes a detaileddescription on cloud computing, implementation of the teachings recitedherein are not limited to a cloud computing environment. Rather,embodiments of the present invention are capable of being implemented inconjunction with any other type of computing environment now known orlater developed.

Cloud computing is a model of service delivery for enabling convenient,on-demand network access to a shared pool of configurable computingresources (e.g., networks, network bandwidth, servers, processing,memory, storage, applications, virtual machines, and services) that canbe rapidly provisioned and released with minimal management effort orinteraction with a provider of the service. This cloud model may includeat least five characteristics, at least three service models, and atleast four deployment models.

Characteristics are as follows:

On-demand self-service: a cloud consumer can unilaterally provisioncomputing capabilities, such as server time and network storage, asneeded automatically without requiring human interaction with theservice's provider.

Broad network access: capabilities are available over a network andaccessed through standard mechanisms that promote use by heterogeneousthin or thick client platforms (e.g., mobile phones, laptops, andpersonal digital assistants (PDAs)).

Resource pooling: the provider's computing resources are pooled to servemultiple consumers using a multi-tenant model, with different physicaland virtual resources dynamically assigned and reassigned according todemand. There is a sense of location independence in that the consumergenerally has no control or knowledge over the exact location of theprovided resources by may be able to specify location at a higher levelof abstraction (e.g., country, state, or datacenter).

Rapid elasticity: capabilities can be rapidly and elasticallyprovisioned, in some cases automatically, to quickly scale out andrapidly released to quickly scale in. To the consumer, the capabilitiesavailable for provisioning often appear to be unlimited and can bepurchased in any quantity at any time.

Measured service: cloud systems automatically control and optimizeresource use by leveraging a metering capability at some level ofabstraction appropriate to the type of service (e.g., storage,processing, bandwidth, and active user accounts). Resource usage can bemonitored, controlled, and reported, providing transparency for both theprovider and consumer of the utilized service.

Service Models are as follows:

Software as a Service (SaaS): the capability provided to the consumer isto use the provider's applications running on a cloud infrastructure.The applications are accessible from various client devices through athin client interface such as a web browser (e.g., web-based e-mail).The consumer does not manage or control the underlying cloudinfrastructure including network, servers, operating systems, storage,or even individual application capabilities, with the possible exceptionof limited user-specific application configuration settings.

Platform as a Service (PaaS): the capability provided to the consumer isto deploy onto the cloud infrastructure consumer-created or acquiredapplications created using programming languages and tools supported bythe provider. The consumer does not manage or control the underlyingcloud infrastructure including networks, servers, operating systems, orstorage, but has control over the deployed applications and possiblyapplication hosting environment configurations.

Infrastructure as a Service (IaaS): the capability provided to theconsumer is to provision processing, storage, networks, and otherfundamental computing resources where the consumer is able to deploy andrun arbitrary software, which can include operating systems andapplications. The consumer does not manage or control the underlyingcloud infrastructure but has control over operating systems, storage,deployed applications, and possibly limited control of select networkingcomponents (e.g., host firewalls).

Deployment Models are as follows:

Private cloud: the cloud infrastructure is operated solely for anorganization. It may be managed by the organization or a third party andmay exist on-premises or off-premises.

Community cloud: the cloud infrastructure is shared by severalorganizations and supports a specific community that has shared concerns(e.g., mission, security requirements, policy, and complianceconsiderations). It may be managed by the organizations or a third partyand may exist on-premises or off-premises.

Public cloud: the cloud infrastructure is made available to the generalpublic or a large industry group and is owned by an organization sellingcloud services.

Hybrid cloud: the cloud infrastructure is a composition of two or moreclouds (private, community, or public) that remain unique entities butare bound together by standardized or proprietary technology thatenables data and application portability (e.g., cloud bursting forload-balancing between clouds).

A cloud computing environment is service oriented with a focus onstatelessness, low coupling, modularity, and semantic interoperability.At the heart of cloud computing is an infrastructure that includes anetwork of interconnected nodes.

Referring to FIG. 1, a flowchart illustrating a method 100 fordetermining a receptiveness value is depicted, according to variousembodiments. In an embodiment, the method 100 is implemented as acomputer script or computer program to be executed on a computer systemsuch as computer system 700. In an embodiment, a computer system isconfigured to execute operation 110 to identify a sending computersystem and a receiving computer system. In various embodiments, thesending computer system is a potential sender of at least one electronicmessage during a first time period. In various embodiments, thereceiving computer system is a potential recipient of the at least oneelectronic message during the first time period. In an embodiment,identifying the sending computer system and receiving computer systemincludes locating the sending computer system and the receiving computersystem and establishing a logical connection between the sendingcomputer system and the receiving computer system. In variousembodiments, the connection is via a network. In an embodiment, theconnection is via cloud computing. In various embodiments, locating thesending computer system and the receiving computer system includesidentifying the network address for each of the computer systems.

In an embodiment, the computer system is configured to execute operation120 to receive a request from the sending computer system for areceptiveness value of the receiving computer system. In variousembodiments, as discussed herein, the receptiveness value indicatesopenness of the receiving computer system to interruption. In variousembodiments, a request from the sending computer system is an automaticupdate. The automatic update may occur at certain times. For example,the receptiveness value may be automatically updated every 15 minutes.In various embodiments, a request from the sending computer system is amanual request from the sender. For example, a user of a sendingcomputer system may want to send an electronic message to a manager, butmanually requests for the receptiveness value to be updated in order toensure that the manager is receptive to an electronic communication.

In an embodiment, a computer system is configured to execute operation130 to determine a current state of the receiving computer system. Invarious embodiments, the current state is a state of activity of one ormore external devices in a geographic area of the receiving computersystem during the first time period. In various embodiments, the firsttime period is the current time period. The geographic area may be aroom in which the receiving computer system is located. In variousembodiments, the geographic area is a distance surrounding the receivingcomputer system. For example, the technology used to monitor theexternal devices may be effective within a certain range. In variousembodiments, this certain range may be the geographic area.

In an embodiment, determining the current state comprises locating theone or more external devices in the geographic area of the receivingcomputer system during the first time period, identifying activitystates of the one or more external devices during the first time period,and analyzing the activity states of the one or more external devicesduring the first time period, resulting in the current state. In variousembodiments, the external devices are located using the internet ofthings (IoT). In various embodiments, the external devices are locatedusing Bluetooth® or personal area network (PAN) technology. Examples ofthe locating using IoT are described herein. In various embodiments,location is used to identify and then analyze the external devices. Inan embodiment, the external devices may provide their GPS location. Invarious embodiments, the location may be assigned to an external devicewhen an external device is setup or installed. In an embodiment, varioussignals are used to determine location. For example, when using the IoT,global navigation satellite system (GNSS) (e.g., Global PositioningSystem (GPS), Global Navigation Satellite System (GLONASS), Europe'sGlobal Satellite Navigation System named Galileo, BeiDou NavigationSatellite System (BDS), cellular (e.g., Global System for MobileCommunications (GSM®), Long-Term Evolution (LTE®), and/or local beacon(e.g., wireless internet) signals may be used to determine location. Invarious embodiments, the location of the device is used to identify thedevice and to track the device. In order to identify the device, anexternal device identifier may be transmitted along with the GPSlocation. In various embodiments, the location of the device is used togather data of the device.

In various embodiments, identifying activity states of the one or moreexternal devices during the first time period includes determiningcurrent activities of the external devices, wherein current activitiesare the actions or activities of the one or more devices during thecurrent time. For example, if the receiving computer system were withina geographic area of a TV, a video game console, a coffee pot, amicrowave, and/or a light switch, identifying activity states of thedevices may include identifying that the TV is on, the video gameconsole is off, the coffee pot is on and brewing, the microwave is off,and/or the light switch is on. In another example, if the receivingcomputer system were within a geographic area (e.g., within twenty feet)of a mobile device, identifying activity states may include identifyingthat a certain computer software application or web browser is active onthe mobile device (e.g., a game may be active on the device).

In various embodiments, analyzing the activity states of the one or moreexternal devices during the first time period includes gathering data ofthe activity states of the external devices and determining an overallstate of the devices during the first time period. The various activitystates of the external devices may be compiled. In various embodiments,an overall state of the devices may be a compiled list or chart of theactivities of the external devices. In various embodiments, an overallstate of the devices is a singular state that summarizes the variousactivities and states of the external devices. For example, if a TV wereon, a video game console were off, a coffee pot were on and brewing, amicrowave were off, and/or a light switch were on, the overall state maybe moderately active. In another example, if a mobile device were on andactive (e.g., an application is actively running), the overall state maybe active.

In various embodiments, determining the current state further includescalculating a current state receptiveness value. In an embodiment, thecurrent state receptiveness value indicates the openness of thereceiving computer system to interruption at the current state. Invarious embodiments, the overall state may correspond with areceptiveness value. For example, a moderately active state may have areceptiveness value of 0.5 or a range of receptiveness values from0.5-0.7, on a scale of 0 to 1. In various embodiments, calculating thecurrent state receptiveness value is done using an automated statisticaltechnique, described herein.

In an embodiment, a computer system is configured to execute operation140 to determine a known state of the receiving computer system. Invarious embodiments, the known state is the state of activity of the oneor more external devices in the geographic area of the receivingcomputer system during a second time period. In an embodiment, thesecond time period precedes the first time period. For example, thefirst time period may be the current time and the second time period mayhave been a week prior to the current time.

In various embodiments, determining the known state comprises locatingthe one or more external devices in the geographic are of the receivingcomputer system during the second time period, identifying the activitystates of the one or more external devices during the second timeperiod, and analyzing the activity states of the one or more externaldevices during the second time period. In various embodiments, theexternal devices are located using IoT. In various embodiments, locationis used to find and analyze the external devices. In variousembodiments, the activity and activity states of the external devicesare stored in a memory database and are accessed during the first timeperiod by the receiving computer system. In various embodiments, thememory database is stored in a memory of the receiving computer system.In various embodiments, the memory database is within a memory of athird party system.

In various embodiments, identifying the activity states of the one ormore external devices during the second time period includes determiningactivities of the external devices during the second time period. Forexample, the activity states may include a light switch is off, a TV isoff, and/or a mobile device is on. In an embodiment, analyzing theactivity states of the one or more external devices during the secondtime period includes gathering data of the activity states of the one ormore external devices and determining an overall state of the one ormore external devices during the second time period. In variousembodiments, the activity state data is gathered during the second timeperiod and saved. In various embodiments, the data is saved on thereceiving computer system. In various embodiments, the data is saved ona third party server.

In various embodiments, determining the known state further includescalculating a known state receptiveness value. In an embodiment, theknown state receptiveness value indicates the openness of the receiverto interruption and the openness of the corresponding receiving computersystem to interruption, at the known state. In various embodiments,calculating the known state receptiveness value includes identifying atleast one second time period electronic message received by thereceiving computer system during the second time period, identifyingmessage metadata for the at least one second time period electronicmessage, calculating a response time to the at least one second timeperiod electronic message, in response to calculating the response time,generating correlation transaction sets and the correlationprobabilities, and calculating the known state receptiveness value usingthe correlation transaction sets and probabilities. In variousembodiments, the response time is an elapsed time between a time thereceiving computer system receives the at least one second time periodelectronic message and a time the receiving computer system sends aresponse to the at least one second time period electronic message. Inan embodiment, each of the correlation transaction sets is a data set ofthe one or more external devices, the activity states, and the responsetime. In various embodiments, each of the correlation probabilities is aprobability of the one or more external devices and the activity statescorrelating with the response time based on the correlation transactionsets.

In various embodiments, identifying at least one second time periodelectronic message received by the receiving computer system during thesecond time period includes identifying a past electronic messagereceived by the receiving computer system. For example, the receivingcomputer system may have received an instant message from a specificsending computer system three days before the current time. In anembodiment, identifying message metadata for the at least one secondtime period electronic message includes locating and finding datagathered from past messages. In an embodiment, this data is storedwithin a memory of the receiving computer system. In an embodiment, thedata is stored within a memory of a third party system. In variousembodiments, the message metadata may include the time the second timeperiod electronic message was sent or received, the sender of the secondtime period electronic message, the length of the second time periodelectronic message, the known state of the receiving computer system atthe second time period or the time the second time period electronicmessage was sent/received, the activity states of the external devicesat the second time period, and/or the activity states of the receivingcomputer system at the second time period.

In an embodiment, calculating a response time to the second time periodelectronic message includes determining a time the second time periodelectronic message was received by the receiving computer system anddetermining a time a response message was sent by the receiving computersystem. These times may be included in the data gathered from the pastmessages. In various embodiments, the response time is the time betweenthe time the second time period electronic message was received and thetime the response message was sent. In an embodiment, calculating theresponse time may include calculating the difference between the timethe second time period electronic message was received and the time theresponse message was sent. In various embodiments, the response messageincludes an answer or action taken in response to the second time periodelectronic message. For example, if a second time period electronicmessage from the sending computer system to the receiving computersystem were “what time is our meeting this afternoon?” and the responsemessage from the receiving computer system were “2:00”, a message sentby the receiving computer system of “we'll talk later” in response tothe second time period electronic message may not be classified as aresponse message because the message does not include an action oranswer in response to the second time period electronic message.

In various embodiments, generating correlation transaction sets andcorrelation probabilities includes identifying data sets for theexternal devices, the activity states of the external devices, and theresponse time corresponding to the activity states of the externaldevices. In an embodiment, the correlation probability identifies howmuch the external devices and their states correlate with the responsetime, based on the correlation transaction sets. For example, at a knownstate, if a light switch were on, a TV were off, a gaming console wereoff, and a coffee pot were off, based on the activity states of theexternal devices (with minimal devices that are on or active), thereceiving computer system may be predicted to have a high receptivenessto interruption. A response time of the receiving computer system being2 hours may indicate a low receptiveness. Because this low receptivenesswas not expected based on the activity states of the external devices,the correlation probability in this example would be low (for example30%), because the response time does not correlate with the activitystates and the correlation transaction set. In various embodiments, theknown state receptiveness value is calculated using the correlationtransaction sets and probabilities via an automated statisticaltechnique described herein.

In an embodiment, a computer system is configured to execute operation150 to analyze the current state and the known state to determinewhether the current state is equivalent to the known state. In variousembodiments, analyzing the current state and the known state includesidentifying a known state that is most closely related to the currentstate. Identifying a known state that is closely related to the currentstate may increase the accuracy of the receptiveness value. For example,if the current state and the known state were to have the same activitystates of external devices (e.g., TV on and light switch on) then thereceptiveness of the receiving computer system to interruption for theknown state may be similar or the same as the receptiveness of thereceiving computer system to interruption for the current state. Invarious embodiments, analyzing the current state and the known stateincludes comparing the current state to the known state.

In an embodiment, calculating the receptiveness value includes, inresponse to determining that the current state is unequal to the knownstate, calculating the receptiveness value via an automated statisticaltechnique.

In an embodiment, calculating the receptiveness value comprises, inresponse to determining that the current state is equivalent to theknown state, determining the receptiveness value for the receivingcomputer system is equivalent to the calculated known statereceptiveness value. For example, if the TV were on and external lightswere on (with all other external devices either off or inactive) forboth the known state and the current state, and the receptiveness valuewere calculated to be 0.3 for the known state, the receptiveness valuemay also be 0.3 for the current state.

In an embodiment, a computer system is configured to execute operation160 to calculate the receptiveness value for the receiving computersystem in response to analyzing the current state and the known state.In various embodiments, the calculating includes determining that thereceptiveness value for the receiving computer system is equivalent tothe known state receptiveness value.

In various embodiments, the calculating is done using an automatedstatistical technique. In various embodiments, the automated statisticaltechnique is implemented as a computer script or computer program to beexecuted on a computer system such as computer system 700. In variousembodiments, the automated statistical technique is executed via a cloudcomputing system.

In an embodiment, via the automated statistical technique, a computersystem is configured to correlate data of the receiving computer systemand the external devices. For example, a list of all activity states ofthe receiving computer system and the external devices may be gathered.In various embodiments, correlating data of the receiving computersystem and the external devices includes cleaning up and condensing thedata.

In an embodiment, via the automated statistical technique, a computersystem is configured to determine an effect value for each activitystate. In various embodiments, the effect value indicates theimportance, or effect, of the activity state on the receptiveness of thereceiving computer system to interruption. In various embodiments, eachactivity state is assigned a unique effect value. For example, a coffeepot being turned on may be assigned an effect value of 1, while a gamingsystem being turned on may be assigned an effect value of 10. In anembodiment, the effect value is predetermined by the receiving computersystem. In various embodiments, the effect value is predetermined by athird party system. In an embodiment, the effect value is calculatedusing previous known states and known state receptiveness values.

In an embodiment, a computer system is configured to store the effectvalue in a coefficient variable for each activity state. In variousembodiments, the effect value is a coefficient of the correspondingactivity state. For example, an application “Notepad” currently activeon an external computer, with a calculated effect value of 11, wouldread “11 Notepad” where 11 is the coefficient corresponding to“Notepad.” In various embodiments, these effect value coefficients andactivity states are inserted into a table.

In an embodiment, a computer system is configured to calculate, usingthe stored effect values, the receptiveness value for the receivingcomputer system. In various embodiments, this calculation is done usingthe automated statistical technique. In various embodiments, thestatistical technique includes combining the tabulated effect valuecoefficients to determine a total effect value, and allocating totaleffect values (or a range of total effect values) with receptivenessvalues. For example, a table of effect value coefficients may read:

11 “Notepad”

1 Mozilla® Firefox®

1 Microsoft Windows® Command Processor (Command Prompt)

10 Microsoft® Visual Studio® Debugger

In this example, these coefficients may be added together to get a totaleffect value of 23. A range of total effect values from 20-30 may beassigned to a receptiveness value indicating that the receiver ismoderately available (e.g., a receptiveness value of 3 from a scale of 1to 10). In various embodiments, positive and negative values may be usedto indicate varying degrees of receptiveness.

In an embodiment, a computer system is configured to execute operation170 to transmit computer instructions for displaying the receptivenessvalue to the sending computer system. In various embodiments,transmitting computer instructions for displaying the receptivenessvalue includes sending the receptiveness value to the sending computersystem. The sending computer system may display the receptiveness value.Many types of electronic communication, for example instant messaging,include a status for the user. This status, herein traditional status,may inform other users about the current availability of the or theactivity of the user and may be commonly represented by a general statussuch as “available”, “away”, a statement of current activity, or simplyby a color (e.g., green, yellow, red). In various embodiments, thetransmitted instructions may display the receptiveness value in additionto a traditional status. For example, a receiver may have a traditionalstatus indicating availability but a receptiveness value indicating thatthe receiver is not open to interruption. In another example, a receiverand receiving computer system may have a traditional status indicatingthat the receiver is on the phone, but still may have a highreceptiveness value because historically the receiver has beenpositively responsive to communications during similar calls. In variousembodiments, the instructions to display the receptiveness value aretransmitted in a way to protect the privacy of the receiving computersystem and the receiver. In various embodiments, the transmittedinstructions display the receptiveness value in a user friendly manner.A user friendly manner may include color, shapes, scales, descriptivewords, or other visually appealing formatting.

In various embodiments, the receiving computer system is configured toreceive the receptiveness value from the receiver. A receiver may beable to manually input a receptiveness value, which may then be receivedby the receiving computer system. A receptiveness value may betransmitted as a general value, or a value specific to a sendingcomputer system or group of sending computer systems. In variousembodiments, a general receptiveness value may be a value that isattributed to all sending computer systems.

In various embodiments, when a receptiveness value is specific to asending computer system or group of sending computer systems, a computersystem is further configured to identify electronic communicationexchanged between the receiving computer system and at least one sendingcomputer system based on a review of historical data. For example, auser may have a short response time when communicating with a manager.In response to reviewing historical data in terms of the specificsending computer system(s), a second receptiveness value may becalculated for the specific sending computer system(s), in variousembodiments. Instructions for displaying the second receptiveness valuemay then be transmitted to the specific sending computer system(s).

In an embodiment, based on the calculated receptiveness value, thereceiving computer system executes a preventative action. When thereceiver and the receiving computer system are not open to interruption,the receiving computer system may take action to stop an electroniccommunication from being displayed to the receiver/receiving computersystem. In various embodiments, preventative action may include blockingincoming electronic communication from a sending computer system,storing electronic communication until the receptiveness value dropsbelow or above a threshold and then displaying the electroniccommunication to the receiver/receiving computer system, or anotherpreventative action that stops the display of the electroniccommunication to the receiver/receiving computer system.

In various embodiments, operations 110, 120, 150, 160, and 170 of method100 may all be performed by the receiving computer system. Performingoperation 110, 120, 150, 160, and 170 by the receiving computer systemmay preserve the privacy of the receiving computer system as potentiallyprivate data may not be sent to the sending computer system. In theseembodiments, the receptiveness value may be the only information sent tothe sending computer system(s).

In various embodiments, operations 110, 120, 150, 160, and 170 of method100 may all be performed by a computer system of a trusted third party.In various embodiments, a third party computer system is involved tofactor in additional information. Additional information may includemetrics such as the job title, work hours, and/or other information ofthe receiver that may not be available to the receiving computer system.For example, a receiving computer system may not have access to thevacation schedule of the receiver, but a third party may be able toobtain permission to access such information. Third party processing mayalso allow for meta-analysis of many receivers to identify additionalpatterns, such as programmers not favoring interruptions whiledevelopment applications are open, managers being less open tointerruption during meetings, and subordinates being available toelectronic communication from a direct manager.

In various embodiments, use of a third party computer system may helpprotect the privacy of a receiver from potential senders and sendingcomputer systems. Without a third party server, the receiver may need tobroadcast the receptiveness value for each sender. For example, if anemployee were consistently more open to electronic communication withone co-worker over another, not using a third party server may lead toinadvertently leaking the relative openness/receptiveness tointerruption of a receiver to one individual (sender) over another.Using a third party server may allow the receiver/receiving computersystem to inform the server about all receptiveness values of apotential sender, but a specific sender may only be able to query theserver for its specific receptiveness value.

In various embodiments, a computer system is further configured toreceive feedback data relating to accuracy of the receptiveness value.The receiver may have an option to input feedback indicating theaccuracy of their calculated receptiveness value. For example, areceiver may have a receptiveness value indicating high receptivenessbut is actually very busy reading a document and is not receptive tocommunication. The receiver may give feedback indicating that thereceptiveness value was not accurate. Feedback may include surveys,ratings, or other methods of indicating accuracy. In variousembodiments, a sender, and the corresponding sending computer system,has the option to input feedback.

In various embodiments where feedback is inputted, feedback data may beused to calculate a value indicating the accuracy of the receptivenessvalue (accuracy value). In various embodiments, an accuracy valueindicating low accuracy is used to adjust the automated statisticaltechnique used to calculate the receptiveness value. For example,feedback may indicate that the receptiveness value is not accuratetherefore the calculation may be adjusted to help increase accuracy forfuture receptiveness value calculations.

Referring to FIG. 2, a state diagram 200 depicts interactions betweendifferent steps of determining the receptiveness value, according tovarious embodiments. In various embodiments, a sending computer system210 executes operation 215 periodically checking for an updatedreceptiveness value. In an embodiment, in order to execute operation215, the sending computer system 210 contacts the intermediate server220. In various embodiments, the intermediate server 220 is a thirdparty server. In other various embodiments, the intermediate server 220is a server on the receiving computer system. In other variousembodiments, the intermediate server 220 is a server logically coupledto the receiving computer system. In order to determine thereceptiveness value, intermediate server 220 may execute operation 225determining whether the current state matches the known state. In anembodiment, intermediate server 220 executes operation 225 via operation150. In various embodiments, if intermediate server determines that thecurrent state does not match the known state when executing operation225, the present invention performs operation 235 calculating thereceptiveness value. In an embodiment, the present invention executesoperation 235 via operation 160. In various embodiments, if it isdetermined that the current state matches the known state such that thereceptiveness value of the current state is the same as or substantiallysimilar to the receptiveness value of the known state, the presentinvention executes operation 230 returning the receptiveness value. Inan embodiment, in response to executing operation 230, 235, presentinvention executes operation 240 sending the receptiveness value to theintermediate server 220. The intermediate server 220 may executeoperation 245 returning the receptiveness value to the sending computersystem 210.

Referring to FIG. 3, a flowchart outlining a method 300 of determiningand updating known states is depicted, according to various embodiments.In various embodiments, method 300 occurs during a second time period,wherein the second time period precedes the current time period. In anembodiment, a computer system is configured to execute operation 305identifying or receiving an incoming message. In an embodiment, acomputer system is configured to execute operation 310 determiningmessage metadata. In an embodiment, a computer system is configured toexecute operation 315 recording the message metadata (e.g., sender,time, relationship). The recorded message metadata may be saved forfurther analysis at a later time (e.g., the first time period). Therecorded message metadata may be further analyzed during the second timeperiod.

In various embodiments, a computer system is configured to executeoperation 320 gathering IoT states, such as “TV: On/Off, show”, “Bedroomlights: On/Off, color”, “Office lights: On/Off, color”, “Game Console:On/Off, program”, and “Coffee Pot: On/Off, Brewing”. In variousembodiments, the IoT states are the same as the activity statesdescribed in method 100. In various embodiments, a computer systemexecutes operation 325 recording an elapsed time from a user/receivingcomputer system receiving a message to the response. In an embodiment,this elapsed time is the response time. In various embodiments,operation 330 depicts/displays the recorded metadata gathered inoperations 310-325.

In an embodiment, a computer system executes operation 335 analyzing theresponse time. This analysis may include determining whether theresponse time is one or more standard deviations above or below theaverage response time. In an embodiment, the response time is less thanone standard deviation above or below the average response time andmethod 300 concludes. In various embodiments, this analysis furtherincludes determining that the response time is one or more standarddeviations above the average and assigning a +1 positive modifier to thedata. In various embodiments, this analysis further includes determiningthat the response time is one or more standard deviations below theaverage response time and assigning a −1 negative modifier to the data.

In various embodiments, once the modifier is assigned, the computersystem executes operation 340 generating correlation transaction setsand probabilities is executed. In various embodiments, the computersystem executes operation 345 determining receptiveness for each stateusing the correlation transaction sets and probabilities and themodifier. In various embodiments, the receptiveness for each state isthe same as the known state receptiveness value. In various embodiments,a positive or negative modifier corresponds with a positive or negativereceptiveness. For example, a positive modifier may indicate that thereceptiveness value is positive, which may indicate that a user is moreopen to interruption. In various embodiments, determining the knownstate receptiveness value includes operation 140. In an embodiment, thecomputer system executes operation 350 records known receptive states,or the known state receptiveness values.

Referring to FIG. 4, system 400 includes computer systems andconnections for determining a receptiveness value, according to variousembodiments. System 400 is only one possible arrangement of connectingcomputer systems.

In various embodiments, system 400 includes a receiving computer system410, a network 420, and a sending computer system 430. Although system400 depicts one receiving computer system 410 and one sending computersystem 430, any number or receiving computer systems 410 and sendingcomputer systems 430 may be logically coupled to each other. In variousembodiments, network 420 logically couples receiving computer system 410to sending computer system 430. In various embodiments, receivingcomputer system 410 and sending computer system 430 are logicallycoupled via a cloud computing system.

In various embodiments, receiving computer system 410 includes anidentifying module 412, a communication module 414, an activity statemodule 416, and a receptiveness value module 418. Although the receivingcomputer system 410 is depicted herein with certain elements andimplementations, the receiving computer system 410 is not limited tothese elements and implementations. In various embodiments, theidentifying module 412 identifies a sending computer system 430 and areceiving computer system 410. In various embodiments, the communicationmodule 414 receives a request from the sending computer system 430 for areceptiveness value of the receiving computer system. In variousembodiments, the activity state module 416 determines a current state ofthe receiving computer system 410. The activity state module 416 mayalso determine a known state of the receiving computer system 410. Invarious embodiments, the activity state module 416 analyzes the currentstate and the known state to determine whether the current state isequivalent to the known state. In various embodiments, the receptivenessvalue module 418 calculates the receptiveness value for the receivingcomputer system 410. The receptiveness value module 418 may also totransmit computer instructions for displaying the receptiveness value tothe sending computer system 430.

Referring to FIG. 5, an illustrative cloud computing environment 500 isdepicted. As shown, cloud computing environment 50 includes one or morecloud computing nodes 10 with which local computing devices used bycloud consumers, such as, for example, personal digital assistant (PDA)or cellular telephone 54A, desktop computer 54B, laptop computer 54C,and/or automobile computer system 54N may communicate. Nodes 10 maycommunicate with one another. They may be grouped (not shown) physicallyor virtually, in one or more networks, such as Private, Community,Public, or Hybrid clouds as described hereinabove, or a combinationthereof. This allows cloud computing environment 50 to offerinfrastructure, platforms and/or software as services for which a cloudconsumer does not need to maintain resources on a local computingdevice. It is understood that the types of computing devices 54A-N shownin FIG. 5 are intended to be illustrative only and that computing nodes10 and cloud computing environment 50 can communicate with any type ofcomputerized device over any type of network and/or network addressableconnection (e.g., using a web browser).

Referring to FIG. 6, a set of functional abstraction layers provided bycloud computing environment 50 (FIG. 5) is shown. It should beunderstood in advance that the components, layers, and functions shownin FIG. 6 are intended to be illustrative only and embodiments of theinvention are not limited thereto. As depicted, the following layers andcorresponding functions are provided:

Hardware and software layer 60 includes hardware and softwarecomponents. Examples of hardware components include: mainframes 61; RISC(Reduced Instruction Set Computer) architecture based servers 62;servers 63; blade servers 64; storage devices 65; and networks andnetworking components 66. In some embodiments, software componentsinclude network application server software 67 and database software 68.

Virtualization layer 70 provides an abstraction layer from which thefollowing examples of virtual entities may be provided: virtual servers71; virtual storage 72; virtual networks 73, including virtual privatenetworks; virtual applications and operating systems 74; and virtualclients 75.

In one example, management layer 80 may provide the functions describedbelow. Resource provisioning 81 provides dynamic procurement ofcomputing resources and other resources that are utilized to performtasks within the cloud computing environment. Metering and Pricing 82provide cost tracking as resources are utilized within the cloudcomputing environment, and billing or invoicing for consumption of theseresources. In one example, these resources may include applicationsoftware licenses. Security provides identity verification for cloudconsumers and tasks, as well as protection for data and other resources.User portal 83 provides access to the cloud computing environment forconsumers and system administrators. Service level management 84provides cloud computing resource allocation and management such thatrequired service levels are met. Service Level Agreement (SLA) planningand fulfillment 85 provide pre-arrangement for, and procurement of,cloud computing resources for which a future requirement is anticipatedin accordance with an SLA.

Workloads layer 90 provides examples of functionality for which thecloud computing environment may be utilized. Examples of workloads andfunctions which may be provided from this layer include: mapping andnavigation 91; software development and lifecycle management 92; virtualclassroom education delivery 93; data analytics processing 94;transaction processing 95; and communication processing 96.

Referring to FIG. 7, an exemplary embodiment of a computer system,computer system 700, is depicted. Computer system 700 is only oneexample of a computer system and is not intended to suggest anylimitation as to the scope of use or functionality of embodiments of thepresent invention. Regardless, computer system 700 is capable of beingimplemented to perform and/or performing any of thefunctionality/operations of the present invention.

Computer system 700 includes a computer system/server 702, which isoperational with numerous other general purpose or special purposecomputing system environments or configurations. Examples of well-knowncomputing systems, environments, and/or configurations that may besuitable for use with computer system/server 702 include, but are notlimited to, personal computer systems, server computer systems, thinclients, thick clients, hand-held or laptop devices, multiprocessorsystems, microprocessor-based systems, set top boxes, programmableconsumer electronics, network PCs, minicomputer systems, mainframecomputer systems, and distributed cloud computing environments thatinclude any of the above systems or devices, and the like.

Computer system/server 702 may be described in the general context ofcomputer system-executable instructions, such as program modules, beingexecuted by a computer system. Generally, program modules may includeroutines, programs, objects, components, logic, data structures, and soon that perform particular tasks or implement particular abstract datatypes. Computer system/server 702 may be practiced in distributed cloudcomputing environments where tasks are performed by remote processingdevices that are linked through a communications network. In adistributed cloud computing environment, program modules may be locatedin both local and remote computer system storage media including memorystorage devices.

As shown in FIG. 7, computer system/server 702 in cloud computing node700 is shown in the form of a general-purpose computing device. Thecomponents of computer system/server 702 may include, but are notlimited to, one or more processors or processing units 710, a systemmemory 760, and a bus 715 that couple various system componentsincluding system memory 760 to processor 710.

Bus 715 represents one or more of any of several types of busstructures, including a memory bus or memory controller, a peripheralbus, an accelerated graphics port, and a processor or local bus usingany of a variety of bus architectures. By way of example, and notlimitation, such architectures include Industry Standard Architecture(ISA) bus, Micro Channel Architecture (MCA) bus, Enhanced ISA (EISA)bus, Video Electronics Standards Association (VESA) local bus, andPeripheral Component Interconnects (PCI) bus.

Computer system/server 702 typically includes a variety of computersystem readable media. Such media may be any available media that isaccessible by computer system/server 702, and it includes both volatileand non-volatile media, removable and non-removable media.

System memory 760 can include computer system readable media in the formof volatile memory, such as random access memory (RAM) 762 and/or cachememory 764. Computer system/server 702 may further include otherremovable/non-removable, volatile/non-volatile computer system storagemedia. By way of example only, storage system 766 can be provided forreading from and writing to a non-removable, non-volatile magnetic media(not shown and typically called a “hard drive”). Although not shown, amagnetic disk drive for reading from and writing to a removable,non-volatile magnetic disk (e.g., a “floppy disk”), and an optical diskdrive for reading from or writing to a removable, non-volatile opticaldisk such as a CD-ROM, DVD-ROM or other optical media can be provided.In such instances, each can be connected to bus 715 by one or more datamedia interfaces. As will be further depicted and described below,memory 760 may include at least one program product having a set (e.g.,at least one) of program modules that are configured to carry out thefunctions of embodiments of the invention.

Program/utility 768, having a set (at least one) of program modules 769,may be stored in memory 760 by way of example, and not limitation, aswell as an operating system, one or more application programs, otherprogram modules, and program data. Each of the operating system, one ormore application programs, other program modules, and program data orsome combination thereof, may include an implementation of a networkingenvironment. Program modules 769 generally carry out the functionsand/or methodologies of embodiments of the invention as describedherein.

Computer system/server 702 may also communicate with one or moreperipheral devices 740 such as a keyboard, a pointing device, a display730, etc.; one or more devices that enable a user to interact withcomputer system/server 702; and/or any devices (e.g., network card,modem, etc.) that enable computer system/server 702 to communicate withone or more other computing devices. Such communication can occur viaInput/Output (I/O) interfaces 720. Still yet, computer system/server 702can communicate with one or more networks such as a local area network(LAN), a general wide area network (WAN), and/or a public network (e.g.,the Internet) via network adapter 750. As depicted, network adapter 750communicates with the other components of computer system/server 702 viabus 715. It should be understood that although not shown, other hardwareand/or software components could be used in conjunction with computersystem/server 702. Examples include, but are not limited to: microcode,device drivers, redundant processing units, external disk drive arrays,RAID systems, tape drives, and data archival storage systems, etc.

The present invention may be a system, a method, and/or a computerprogram product at any possible technical detail level of integration.The computer program product may include a computer readable storagemedium (or media) having computer readable program instructions thereonfor causing a processor to carry out aspects of the present invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), a staticrandom access memory (SRAM), a portable compact disc read-only memory(CD-ROM), a digital versatile disk (DVD), a memory stick, a floppy disk,a mechanically encoded device such as punch-cards or raised structuresin a groove having instructions recorded thereon, and any suitablecombination of the foregoing. A computer readable storage medium, asused herein, is not to be construed as being transitory signals per se,such as radio waves or other freely propagating electromagnetic waves,electromagnetic waves propagating through a waveguide or othertransmission media (e.g., light pulses passing through a fiber-opticcable), or electronic signals transmitted through a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, configuration data for integrated circuitry, oreither source code or object code written in any combination of one ormore programming languages, including an object orientated programlanguage such as Smalltalk, C++, or the like, and procedural programminglanguages, such as the “C” programming language or similar programminglanguages. The computer readable program instructions may executeentirely one the user's computer, partly on the user's computer, as astand-alone software package, partly on the user's computer and partlyon a remote computer or entirely on the remote computer or server. Inthe latter scenario, the remote computer may be connected to the user'scomputer through any type of network, including a local area network(LAN) or a wide area network (WAN), or the connection may be made to anexternal computer (for example, through the Internet using an InternetService Provider). In some embodiments, electronic circuitry including,for example, programmable logic circuitry, field-programmable gatearrays (FPGA), or programmable logic arrays (PLA) may execute thecomputer readable program instructions by utilizing state information ofthe computer readable program instructions to personalize the electroniccircuitry, in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the blocks may occur out of theorder noted in the Figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

The descriptions of the various embodiments of the present disclosurehave been presented for purposes of illustration, but are not intendedto be exhaustive or limited to the embodiments disclosed. Manymodifications and variations will be apparent to those of ordinary skillin the art without departing from the scope and spirit of the describedembodiments. The terminology used herein was chosen to best explain theprinciples of the embodiments, the practical application or technicalimprovement over technologies found in the marketplace, or to enableothers of ordinary skill in the art to understand the embodimentsdisclosed herein.

The invention claimed is:
 1. A computer-implemented method comprising:identifying a sending computer system and a receiving computer system,wherein the sending computer system is a potential sender of at leastone electronic message during a first time period and wherein thereceiving computer system is a potential recipient of the at least oneelectronic message during the first time period; receiving a requestfrom the sending computer system for a receptiveness value of thereceiving computer system, wherein the receptiveness value indicatesopenness of the receiving computer system to interruption; determining acurrent state of the receiving computer system, wherein the currentstate is a state of activity of one or more external devices in ageographic area of the receiving computer system during the first timeperiod; determining a known state of the receiving computer system,wherein the known state is the state of activity of the one or moreexternal devices in the geographic area of the receiving computer systemduring a second time period, wherein the second time period precedes thefirst time period; calculating a known state receptiveness value,wherein the known state receptiveness value indicates the openness ofthe receiving computer system to interruption at the known state, and,wherein calculating the known state receptiveness value comprises:identifying at least one second time period electronic message receivedby the receiving computer system during the second time period;identifying message metadata for the at least one second time periodelectronic message; calculating a response time to the at least onesecond time period electronic message, wherein the response time is anelapsed time between a time the receiving computer system received theat least one second time period electronic message and a time thereceiving computer system sent a response to the at least one secondtime period electronic message; in response to calculating the responsetime, generating correlation transaction sets and correlationprobabilities, wherein each of the correlating transaction sets is adata set of the one or more external devices, the activity states, andthe response time, and wherein each of the correlation probabilities isa probability of the one or more external devices and the activitystates correlating with the response time based on the correlationtransaction sets; and calculating the known state receptiveness valueusing the correlation transaction sets and the correlationprobabilities; analyzing the current state and the known state todetermine whether the current state is equivalent to the known state,wherein analyzing the current state and the known state comprisescomparing the current state to the known state; in response to analyzingthe current state and the known state, calculating the receptivenessvalue for the receiving computer system; and transmitting computerinstructions for displaying the receptiveness value to the sendingcomputer system.
 2. The method of claim 1, wherein determining thecurrent state comprises: locating the one or more external devices inthe geographic area of the receiving computer system during the firsttime period; identifying activity states of the one or more externaldevices during the first time period; and analyzing the activity statesof the one or more external devices during the first time period,resulting in the current state.
 3. The method of claim 1, whereindetermining the known state comprises: locating the one or more externaldevices in the geographic area of the receiving computer system duringthe second time period; identifying activity states of the one or moreexternal devices during the second time period; and analyzing theactivity states of the one or more external devices during the secondtime period.
 4. The method of claim 1, wherein calculating thereceptiveness value comprises, in response to determining that thecurrent state is unequal to the known state, calculating thereceptiveness value via an automated statistical technique.
 5. Themethod of claim 1, wherein calculating the receptiveness valuecomprises, in response to determining that the current state isequivalent to the known state, determining the receptiveness value forthe receiving computer system is equivalent to the calculated knownstate receptiveness value.
 6. The method of claim 1, wherein at leastthe identifying, the receiving, the analyzing, the calculating, and thetransmitting are performed by the receiving computer system.
 7. Themethod of claim 1, wherein at least the identifying, the receiving, theanalyzing, the calculating, and the transmitting are performed by acomputer system of a trusted third party.
 8. A system comprising: amemory; and a processor in communication with the memory, the processorconfigured to perform a method comprising: identifying a sendingcomputer system and a receiving computer system, wherein the sendingcomputer system is a potential sender of at least one electronic messageduring a first time period and wherein the receiving computer system isa potential recipient of the at least one electronic message during thefirst time period; receiving a request from the sending computer systemfor a receptiveness value of the receiving computer system, wherein thereceptiveness value indicates openness of the receiving computer systemto interruption; determining a current state of the receiving computersystem, wherein the current state is a state of activity of one or moreexternal devices in a geographic area of the receiving computer systemduring the first time period; determining a known state of the receivingcomputer system, wherein the known state is the state of activity of theone or more external devices in the geographic area of the receivingcomputer system during a second time period, wherein the second timeperiod precedes the first time period; calculating a known statereceptiveness value, wherein the known state receptiveness valueindicates the openness of the receiving computer system to interruptionat the known state, and, wherein calculating the known statereceptiveness value comprises: identifying at least one second timeperiod electronic message received by the receiving computer systemduring the second time period; identifying message metadata for the atleast one second time period electronic message; calculating a responsetime to the at least one second time period electronic message, whereinthe response time is an elapsed time between a time the receivingcomputer system received the at least one second time period electronicmessage and a time the receiving computer system sent a response to theat least one second time period electronic message; in response tocalculating the response time, generating correlation transaction setsand correlation probabilities, wherein each of the correlatingtransaction sets is a data set of the one or more external devices, theactivity states, and the response time, and wherein each of thecorrelation probabilities is a probability of the one or more externaldevices and the activity states correlating with the response time basedon the correlation transaction sets; and calculating the known statereceptiveness value using the correlation transaction sets and thecorrelation probabilities; analyzing the current state and the knownstate to determine whether the current state is equivalent to the knownstate, wherein analyzing the current state and the known state comprisescomparing the current state to the known state; in response to analyzingthe current state and the known state, calculating the receptivenessvalue for the receiving computer system; and transmitting computerinstructions for displaying the receptiveness value to the sendingcomputer system.
 9. The system of claim 8, wherein determining thecurrent state comprises: locating the one or more external devices inthe geographic area of the receiving computer system during the firsttime period; identifying activity states of the one or more externaldevices during the first time period; and analyzing the activity statesof the one or more external devices during the first time period,resulting in the current state.
 10. The system of claim 8, whereindetermining the known state comprises: locating the one or more externaldevices in the geographic area of the receiving computer system duringthe second time period; identifying activity states of the one or moreexternal devices during the second time period; and analyzing theactivity states of the one or more external devices during the secondtime period.
 11. The system of claim 8, wherein at least theidentifying, the receiving, the analyzing, the calculating, and thetransmitting are performed by the receiving computer system.
 12. Thesystem of claim 8, wherein at least the identifying, the receiving, theanalyzing, the calculating, and the transmitting are performed by acomputer system of a trusted third party.
 13. A computer program productcomprising a computer readable storage medium having programinstructions embodied therewith, the program instructions executable bya processor to cause the processor to perform a method comprising:identifying a sending computer system and a receiving computer system,wherein the sending computer system is a potential sender of at leastone electronic message during a first time period and wherein thereceiving computer system is a potential recipient of the at least oneelectronic message during the first time period; receiving a requestfrom the sending computer system for a receptiveness value of thereceiving computer system, wherein the receptiveness value indicatesopenness of the receiving computer system to interruption; determining acurrent state of the receiving computer system, wherein the currentstate is a state of activity of one or more external devices in ageographic area of the receiving computer system during the first timeperiod; determining a known state of the receiving computer system,wherein the known state is the state of activity of the one or moreexternal devices in the geographic area of the receiving computer systemduring a second time period, wherein the second time period precedes thefirst time period; calculating a known state receptiveness value,wherein the known state receptiveness value indicates the openness ofthe receiving computer system to interruption at the known state, and,wherein calculating the known state receptiveness value comprises:identifying at least one second time period electronic message receivedby the receiving computer system during the second time period;identifying message metadata for the at least one second time periodelectronic message; calculating a response time to the at least onesecond time period electronic message, wherein the response time is anelapsed time between a time the receiving computer system received theat least one second time period electronic message and a time thereceiving computer system sent a response to the at least one secondtime period electronic message; in response to calculating the responsetime, generating correlation transaction sets and correlationprobabilities, wherein each of the correlating transaction sets is adata set of the one or more external devices, the activity states, andthe response time, and wherein each of the correlation probabilities isa probability of the one or more external devices and the activitystates correlating with the response time based on the correlationtransaction sets; and calculating the known state receptiveness valueusing the correlation transaction sets and the correlationprobabilities; analyzing the current state and the known state todetermine whether the current state is equivalent to the known statewherein analyzing the current state and the known state comprisescomparing the current state to the known state; in response to analyzingthe current state and the known state, calculating the receptivenessvalue for the receiving computer system; and transmitting computerinstructions for displaying the receptiveness value to the sendingcomputer system.
 14. The computer program product of claim 13, whereindetermining the known state comprises: locating the one or more externaldevices in the geographic area of the receiving computer system duringthe second time period; identifying activity states of the one or moreexternal devices during the second time period; and analyzing theactivity states of the one or more external devices during the secondtime period.